package cn.rkylin.oms.base.brand.dao;

import cn.rkylin.oms.base.brand.domain.Brand;
import com.github.pagehelper.PageInfo;

import cn.rkylin.oms.base.brand.vo.BrandVO;

/**
 * 类名：IBrandDAO<br>
 * 作用：品牌信息数据层接口<br>
 * 创建时间：2018年1月24日 下午2:37:05
 *
 * @author LiPeng
 */
public interface IBrandDAO {

    /**
     * queryBrandList:查询品牌信息列表
     *
     * @param page
     * @param length
     * @param queryParamVO
     * @return
     * @throws Exception
     */
    PageInfo<BrandVO> queryBrandList(int page, int length, BrandVO queryParamVO) throws Exception;

    /**
     * 更新, 根据mdm_code
     *
     * @param brandVO
     * @return
     * @throws Exception
     */
    int updateByMdmCodeSelectiveBrand(BrandVO brandVO) throws Exception;

    /**
     * 插入
     *
     * @param brand
     * @return
     * @throws Exception
     */
    int insertSelectiveBrand(BrandVO brandVO) throws Exception;

    /**
     * 查询
     *
     * @param mdmCode
     * @return
     * @throws Exception
     */
    BrandVO selectByMdmCodeBrand(String mdmCode) throws Exception;
    
    /**
     * 查询
     *
     * @param brandCode
     * @return
     * @throws Exception
     */
    BrandVO selectByBrandCode(BrandVO brandVO) throws Exception;
    
    /**
     * 获取信息
     * @param id
     * @return
     * @throws Exception
     */
    public BrandVO findById(String id) throws Exception ;
    
    /**
     * 创建怕品牌信息
     * @param brand
     * @return
     * @throws Exception
     */
    public int insert(Brand brand) throws Exception;
    
    /**
     * 修改品牌信息
     * @param brand
     * @return
     * @throws Exception
     */
    public int update(Brand brand) throws Exception;
    
    /**
     * 删除品牌信息
     * @param id
     * @return
     * @throws Exception
     */
    public int delete(String id)throws Exception;
    
}
